/**
 * @file socket_channel.h
 * @author 王烨
 * @date 2011-01-09
**/

#ifndef SOCKET_CHANNEL_H_INCLUDED
#define SOCKET_CHANNEL_H_INCLUDED

#include "base_channel.h"

namespace skeleton
{
  class SocketChannel : public BaseChannel
  {
  public:
    SocketChannel();
    virtual ~SocketChannel();
    virtual void ConnectTCP(const char *host, unsinged short port);
    virtual void ConnectUNIX(const char *path);
    virtual bool IsConnected();
    virtual void Close();
    /*调用RPC方法*/
    virtual void CallMethod(const google::protobuf::MethodDescriptor *method,
			    google::protobuf::RpcController *controller,
			    const google::protobuf::Message *parameters,
			    google::protobuf::Message *result,
			    google::protobuf::Closure *done);
  private:
  };
}
#endif
